﻿
using System;
using System.Threading.Tasks;
using System.Linq.Expressions;


using Oliving.Edge.IRepository.Base;
using Oliving.Edge.Model;
using Oliving.Edge.Model.Dto.DTSN;
using Oliving.Edge.Model.DTSN;
using Oliving.Edge.Model.ViewModels.ReportDto;
using System.Collections.Generic;
using Oliving.Edge.Model.ViewModels.DTSN;

namespace Oliving.Edge.IRepository.DTSN
{
    /// <summary>
    /// IDTSN_CanningRecordRepository  , DTSN_CanningRecord , 
    /// </summary>	
    public interface IDTSN_CanningRecordRepository : IBaseRepository<DTSN_CanningRecord>
    {
        Task<PageModel<DTSN_CanningRecordPageDto>> QueryPageList(Expression<Func<DTSN_CanningRecord, bool>> whereExpression, int intPageIndex = 1, int intPageSize = 20, string sortField = null, string sortOrder = null);


        Task<List<ChartDto>> ReportChart(Expression<Func<DTSN_CanningRecord, bool>> whereExpression);


        Task<List<DTSN_ReportTongDaoDto>> ReportTongDao(
            Expression<Func<DTSN_CanningRecord, bool>> whereExpression);



    }

}
